package com.zsrt.java.day20161226.wrl.demo01;

import java.util.Scanner;

/**
 * if else写1个计算器；
 * 根据符号，确定运算
 * @author Administrator
 */
public class Work01 {
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		while(true){
			System.out.println("请输入第一个数字：");
			int number1 = input.nextInt();
			System.out.println("请输入运算符：+ - * / %");
			String flag = input.next();
			System.out.println("请输入第二个数字：");
			int number2 = input.nextInt();
			
			//调用运算器
			int result = cal(number1,flag,number2);		
			System.out.println(result);
			System.out.println("是否结束运算（y/n）");		
			String panduan = input.next();
			
			//判断是否结束循环
			if("y".equals(panduan)){
				break;
			}
		}
		System.out.println("程序结束...");
		input.close();
	}
	
	/**
	 * 简易计算器
	 * 
	 * @param number1	数1
	 * @param flag		运算符号
	 * @param number2	数2
	 * @return			数1 与 数2 运算的结果
	 */
	public static int cal(int number1,String flag,int number2) {
		if("+".equals(flag)){
			return add(number1,number2);
		}else if("-".equals(flag)){
			return sub(number1,number2);
		}else if("*".equals(flag)){
			return cheng(number1,number2);
		}else if("/".equals(flag)){
			return chu(number1,number2);
		}else if("%".equals(flag)){
			return mo(number1,number2);
		}else{
			return 0;
		}
	}
	
	/**
	 * 两数相加
	 * @param x	加数1
	 * @param y	加数2
	 * @return	两数之和
	 */
	public static int add(int x,int y){
		int sum = x+y;
		return sum;
	}
	
	/**
	 * 两数相减
	 * @param x	被减数
	 * @param y	减数
	 * @return	两数之差
	 */
	public static int sub(int x,int y){
		int result = x-y;
		return result;
	}
	
	/**
	 * 两数相乘
	 * @param x	乘数1
	 * @param y	乘数2
	 * @return	两数之积
	 */
	public static int cheng(int x,int y){
		int result = x*y;
		return result;
	}
	
	/**
	 * 两数相除
	 * @param x	被除数
	 * @param y	除数
	 * @return	两数之商
	 */
	public static int chu(int x,int y){
		//排除除0异常
		if(0==y){
			return 0;
		}
		int result = x/y;
		return result;
	}
	
	/**
	 * 两数求模
	 * @param x	数1
	 * @param y	数2
	 * @return	两数之模
	 */
	public static int mo(int x,int y){
		int result = x%y;
		return result;
	}
}
